iT邦幫忙

2022 iThome 鐵人賽

DAY 5
0

大致上了解了宣告(var、let、const)用法以後,我們要注意的是宣告的變數類型,因為變數能儲存的樣式有非常多種,若是概念懵懵懂懂的話,寫程式時碰上不同的數據類型比較或相加時,就會出現大問題,所以我們來一一看看有哪些吧!

Javascript變數類型

      var weight = 76; // 宣告數字
      var state = true; //宣告布林值
      var name = "Jason"; // 宣告字串
      var color = ["red", "blue", "yellow"]; // 陣列
      var person = { name: "leo", number: "23" }; // 物件

變數類型可以儲存數字、布林值、數值、字串、陣列、物件,各種不同的類型。

而當不同的數據類型,會發生甚麼事?這時候就是我們必須去理解的!下面這個例子:

      var x = 184 + "jason";
      console.log(x);       //"184jason"

當我們數值跟字串相加時,數字會直接被當成字串!

而下面這兩個例子可以讓我們更清楚了解,並且知道式子是由左向右計算的。

      var x = 184 + 8 + "jason";
      console.log(x);           //"192jason"
      var y = "jason" + 184 + 8;
      console.log(y);           //"jason1848"

當我們不知道資料類型時,有個很好的辦法可以判斷變數的類型!

typeof

      var weight = 76; // 宣告數字
      var state = true; //宣告布林值
      var name = "Jason"; // 宣告字串
      var color = ["red", "blue", "yellow"]; // 陣列
      var person = { name: "leo", number: "23" }; // 物件

      console.log(typeof weight);   //number
      console.log(typeof state);    //boolean
      console.log(typeof name);     //string
      console.log(typeof color);    //object
      console.log(typeof person);   //object

這邊有一個要特別注意的點!就是陣列判斷出來也是object,Javascript中陣列屬於物件。

那今天我們宣告了一個變數,但沒有他數值類型呢?

Undefined

      var username;
      console.log(typeof username);    //Undefined

這時候會會印出Undefined,跟空值Null是不同的喔!

Null

null是空值,代表不存在的數值,可要注意的是,當我們用typeof來看null時,他會返回object物件。

      var person = null;
      console.log(typeof person); //object

因為回傳的是object物件,所以要清空值時,要非常小心的使用null。當然,以防萬一你可以使用Undefined來清空。

Javascript的數據類型差不多就到這了,下一篇我們要介紹函數的用法!


上一篇
Day4 const宣告變數
下一篇
Day6 Javascript 函數
系列文
Javascripts惡補小教室30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言